package com.ruoyi.teaching.mapper;

import java.util.List;

import com.ruoyi.teaching.domain.TeachingCoursePrice;
import org.apache.ibatis.annotations.Param;

/**
 * 收费标准Mapper接口
 *
 * @author William
 * @date 2022-10-13
 */
public interface TeachingCoursePriceMapper {
    /**
     * 查询收费标准
     *
     * @param priceId 收费标准主键
     * @return 收费标准
     */
    public TeachingCoursePrice selectTeachingCoursePriceByPriceId(Long priceId);

    /**
     * 查询收费标准列表
     *
     * @param teachingCoursePrice 收费标准
     * @return 收费标准集合
     */
    public List<TeachingCoursePrice> selectTeachingCoursePriceList(TeachingCoursePrice teachingCoursePrice);

    /**
     * 新增收费标准
     *
     * @param teachingCoursePrice 收费标准
     * @return 结果
     */
    public int insertTeachingCoursePrice(TeachingCoursePrice teachingCoursePrice);

    /**
     * 修改收费标准
     *
     * @param teachingCoursePrice 收费标准
     * @return 结果
     */
    public int updateTeachingCoursePrice(TeachingCoursePrice teachingCoursePrice);

    /**
     * 删除收费标准
     *
     * @param priceId 收费标准主键
     * @return 结果
     */
    public int deleteTeachingCoursePriceByPriceId(Long priceId);

    /**
     * 批量删除收费标准
     *
     * @param priceIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTeachingCoursePriceByPriceIds(String[] priceIds);

    /**
     * 根据课程ID 和学校ID批量删除收费标准
     *
     * @param courseId 课程ID
     * @param schoolId 学校ID
     */
    public void deleteTeachingCoursePriceByCourseIdAndSchoolId(@Param("courseId") Long courseId, @Param("schoolId") Long schoolId);

    /**
     * 根据课程ID 和学校ID查询收费标准
     *
     * @param courseId 课程ID
     * @param schoolId 学校ID
     */
    public List<TeachingCoursePrice> selectTeachingCoursePriceByCourseIdAndSchoolId(@Param("courseId") Long courseId, @Param("schoolId") Long schoolId);
}
